package com.qf.api.blog.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qf.api.blog.dto.CatalogArticleDTO;
import com.qf.api.blog.dto.CatalogDTO;
import com.qf.api.blog.dto.CatalogSortDTO;
import com.qf.api.blog.entity.WikiCatalogEntity;
import com.qf.api.blog.vo.WikiCatalogVO;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;

import java.util.List;

/**
* @author sin
* @description 针对表【t_wiki_catalog(知识库目录表（两级结构）)】的数据库操作Service
* @createDate 2025-05-23 13:27:40
*/
public interface WikiCatalogService extends IService<WikiCatalogEntity> {

    List<WikiCatalogVO> getWikiCatalog(Long wikiId);

    Boolean addWikiCatalog(Long wikiId, String title, String icon);

    void editCatalogSort(List<CatalogSortDTO> catalogSortDTOS);

    Boolean updateWikiCatalog(Long id, CatalogDTO catalogDTO);

    Boolean removeWikiCatalog(Long id);

    String addArticle(Long parentId, List<CatalogArticleDTO> articleDTOS);

    List<com.qf.api.front.vo.WikiCatalogVO> getFrontWikiCatalog(Long wikiId);
}
